import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        final long MOD = 998244353;

        Scanner scanner = new Scanner(System.in);
        String input = scanner.next();

        // 计算字符出现的次数
        int[] charCount = new int[26];
        for (int i = 0; i < input.length(); i++) {
            charCount[input.charAt(i) - 'a']++;
        }

        long result = 1;
        for (int i = 0; i < 26; i++) {
            // 对于每个字符，有出现0次、1次、2次...charCount[i]次，计算组合数
            for (int j = 0; j <= charCount[i]; j++) {
                if (j > 0) {
                    result = (result * 2) % MOD; // 每个字符可以选择出现或不出现
                }
            }
        }

        // 减去空字符串
        result = (result - 1 + MOD) % MOD;

        System.out.println(result);
    }
}
